Micron Document
<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>JavaScript library</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/JavaScript_library"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-JavaScript_library rootpage-JavaScript_library skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">JavaScript library</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<p>A <b>JavaScript library</b> is a <a href="Library_(computing)" title="Library (computing)">library</a> of pre-written <a href="JavaScript" title="JavaScript">JavaScript</a> code that allows for easier development of JavaScript-based applications,<sup id="cite_ref-1" class="reference"><a href="#cite_note-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> especially for <a href="Ajax_(programming)" title="Ajax (programming)">AJAX</a> and other <a href="World_Wide_Web" title="World Wide Web">web-centric</a> technologies.<sup id="cite_ref-2" class="reference"><a href="#cite_note-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> They can be included in a website by embedding it directly in the HTML via a script tag.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Libraries">Libraries</h2></div>
<p>With the expanded demands for <a href="JavaScript" title="JavaScript">JavaScript</a>, an easier means for programmers to develop such dynamic interfaces was needed.<sup id="cite_ref-3" class="reference"><a href="#cite_note-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-4" class="reference"><a href="#cite_note-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup> Thus, JavaScript libraries and JavaScript widget libraries were developed, allowing for developers to concentrate more upon more distinctive applications of <a href="Ajax_(programming)" title="Ajax (programming)">Ajax</a>.<sup id="cite_ref-5" class="reference"><a href="#cite_note-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup> This has led to other companies and groups, such as <a href="Microsoft" title="Microsoft">Microsoft</a> and <a href="Yahoo!" class="mw-redirect" title="Yahoo!">Yahoo!</a> developing their own JavaScript-based user interface libraries, which find their way into the web applications developed by these companies.<sup id="cite_ref-6" class="reference"><a href="#cite_note-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup> Some JavaScript libraries allow for easier integration of JavaScript with other web development technologies, such as <a href="Cascading_Style_Sheets" class="mw-redirect" title="Cascading Style Sheets">CSS</a>, <a href="PHP" title="PHP">PHP</a>, <a href="Ruby_(programming_language)" title="Ruby (programming language)">Ruby</a>, and <a href="Java_(programming_language)" title="Java (programming language)">Java</a>, while others provide utilities, often in the form of JavaScript <a href="JavaScript_syntax#Function" title="JavaScript syntax">functions</a>, to make repetitive and complex tasks less taxing.<sup id="cite_ref-7" class="reference"><a href="#cite_note-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-8" class="reference"><a href="#cite_note-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup> Many libraries include code to detect differences between runtime environments and remove the need for applications to allow for such inconsistencies.
</p><p>Almost all JavaScript libraries are released under either a <a href="Permissive_software_license" title="Permissive software license">permissive</a> or <a href="Copyleft" title="Copyleft">copyleft</a> license to ensure license-free distribution, usage, and modification.<sup id="cite_ref-9" class="reference"><a href="#cite_note-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Frameworks">Frameworks</h2></div>
<p>Some JavaScript libraries, such as <a href="Angular_(application_platform)" class="mw-redirect" title="Angular (application platform)">Angular</a>, are classified as <a href="Software_framework" title="Software framework">frameworks</a> since they exhibit full-stack capabilities and properties not found in general JavaScript libraries.<sup id="cite_ref-10" class="reference"><a href="#cite_note-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-11" class="reference"><a href="#cite_note-11"><span class="cite-bracket">[</span>11<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading3"><h3 id="Capabilities_and_Trade-offs_in_Modern_Frameworks">Capabilities and Trade-offs in Modern Frameworks</h3></div>
<p>JavaScript-based web application frameworks, such as <a href="React_(software)" title="React (software)">React</a> and <a href="Vue.js" title="Vue.js">Vue</a>, provide extensive capabilities but come with associated trade-offs. These frameworks often extend or enhance features available through native web technologies, such as <a href="Routing" title="Routing">routing</a>, <a href="Component-based_software_engineering" title="Component-based software engineering">component-based development</a>, and <a href="State_management" title="State management">state management</a>. While native web standards, including Web Components, modern JavaScript APIs like Fetch and ES Modules, and browser capabilities like <a href="Web_Components" title="Web Components">Shadow DOM</a>, have advanced significantly, frameworks remain widely used for their ability to enhance developer productivity, offer structured <a href="Pattern" title="Pattern">patterns</a> for large-scale applications, simplify handling edge cases, and provide tools for performance optimization. <sup id="cite_ref-:0_12-0" class="reference"><a href="#cite_note-:0-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:1_13-0" class="reference"><a href="#cite_note-:1-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:2_14-0" class="reference"><a href="#cite_note-:2-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup>
</p><p>Frameworks can introduce abstraction layers that may contribute to performance overhead, larger bundle sizes, and increased complexity. Modern frameworks, such as React 18 and Vue 3, address these challenges with features like concurrent rendering, tree-shaking, and selective hydration. While these advancements improve rendering efficiency and resource management, their benefits depend on the specific application and implementation context.
</p><p><a href="Lightweight_programming_language" title="Lightweight programming language">Lightweight frameworks</a>, such as <a href="Svelte" title="Svelte">Svelte</a> and Preact, take different architectural approaches, with Svelte eliminating the virtual DOM entirely in favor of compiling components to efficient JavaScript code, and Preact offering a minimal, compatible alternative to React. Framework choice depends on an application’s requirements, including the team’s expertise, performance goals, and development priorities. <sup id="cite_ref-:0_12-1" class="reference"><a href="#cite_note-:0-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:1_13-1" class="reference"><a href="#cite_note-:1-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:2_14-1" class="reference"><a href="#cite_note-:2-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup>
</p><p>A newer category of web frameworks, including enhance.dev, Astro, and Fresh, leverages native web standards while minimizing abstractions and development tooling. <sup id="cite_ref-15" class="reference"><a href="#cite_note-15"><span class="cite-bracket">[</span>15<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-16" class="reference"><a href="#cite_note-16"><span class="cite-bracket">[</span>16<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-17" class="reference"><a href="#cite_note-17"><span class="cite-bracket">[</span>17<span class="cite-bracket">]</span></a></sup> These solutions emphasize <a href="Progressive_enhancement" title="Progressive enhancement">progressive enhancement</a>, <a href="Server-side_rendering" class="mw-redirect" title="Server-side rendering">server-side rendering</a>, and optimizing performance. Astro renders static HTML by default while hydrating only interactive parts. Fresh focuses on server-side rendering with zero runtime overhead. Enhance.dev prioritizes progressive enhancement patterns using Web Components. While these tools reduce reliance on client-side JavaScript by shifting logic to build-time or server-side execution, they still use JavaScript where necessary for interactivity. This approach makes them particularly suitable for performance-critical and content-focused applications. <sup id="cite_ref-:0_12-2" class="reference"><a href="#cite_note-:0-12"><span class="cite-bracket">[</span>12<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:1_13-2" class="reference"><a href="#cite_note-:1-13"><span class="cite-bracket">[</span>13<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-:2_14-2" class="reference"><a href="#cite_note-:2-14"><span class="cite-bracket">[</span>14<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Packages">Packages</h2></div>
<p>All <a href="Node.js#Package_management" title="Node.js">npm packages</a> are JavaScript libraries, but not all libraries are packages. Npm serves as a package manager for packages used in <a href="Node.js" title="Node.js">Node.js</a> runtimes.<sup id="cite_ref-18" class="reference"><a href="#cite_note-18"><span class="cite-bracket">[</span>18<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-19" class="reference"><a href="#cite_note-19"><span class="cite-bracket">[</span>19<span class="cite-bracket">]</span></a></sup> However, some npm packages offer <a href="Content_delivery_network" title="Content delivery network">CDN</a> support for use of the library in both Node.js runtimes as well as the browser.<sup id="cite_ref-20" class="reference"><a href="#cite_note-20"><span class="cite-bracket">[</span>20<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<ul><li><a href="Ajax_(programming)" title="Ajax (programming)">Ajax framework</a></li>
<li><a href="Widget_toolkit" title="Widget toolkit">Widget toolkit</a></li>
<li><a href="List_of_JavaScript_libraries" title="List of JavaScript libraries">List of JavaScript libraries</a></li>
<li><a href="Comparison_of_JavaScript-based_web_frameworks" title="Comparison of JavaScript-based web frameworks">Comparison of JavaScript-based web frameworks</a></li></ul>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */


.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}


/* end https://en.wikipedia.org/ */
</style><div class="reflist">
<div class="mw-references-wrap mw-references-columns"><ol class="references">
<li id="cite_note-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-1">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */


.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}


/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFDavid_Sawyer_McFarland2014" class="citation book cs1">David Sawyer McFarland (2014). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=0oWMBAAAQBAJ"><i>JavaScript &amp; JQuery: The Missing Manual</i></a>. <a href="O'Reilly_Media" title="O'Reilly Media">O'Reilly Media</a>. p.&nbsp;106. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9781491948620</bdi>.</cite></span>
</li>
<li id="cite_note-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-2">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.khanacademy.org/computing/computer-programming/html-css-js/using-js-libraries-in-your-webpage/a/whats-a-js-library">"What is a JS library?"</a>. <i>Khan Academy</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2018-01-15</span></span>.</cite></span>
</li>
<li id="cite_note-3"><span class="mw-cite-backlink"><b><a href="#cite_ref-3">^</a></b></span> <span class="reference-text"><cite id="CITEREFPeters2019" class="citation web cs1">Peters, Siem (2019-04-08). <a rel="nofollow" class="external text" href="https://blog.bitsrc.io/a-brief-history-of-javascript-from-netscape-to-frameworks-74bf4774eeef">"A Brief History of JavaScript: from Netscape to Frameworks"</a>. <i>Medium</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-4">^</a></b></span> <span class="reference-text"><cite id="CITEREFAsyncBanana2021" class="citation web cs1">AsyncBanana (2021-04-21). <a rel="nofollow" class="external text" href="https://javascript.plainenglish.io/a-short-history-of-javascript-and-its-evolution-6f254cc016ee">"A Short History of JavaScript and Its Evolution"</a>. <i>Medium</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-5">^</a></b></span> <span class="reference-text"><cite id="CITEREFAndy_Harris2009" class="citation book cs1">Andy Harris (2009). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=iILJ_KIyxkgC&amp;pg=PA240"><i>JavaScript and AJAX For Dummies</i></a>. <a href="Wiley_(publisher)" title="Wiley (publisher)">Wiley</a>. p.&nbsp;240. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9780470417997</bdi>.</cite></span>
</li>
<li id="cite_note-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-6">^</a></b></span> <span class="reference-text"><cite id="CITEREFJake_Rutter2011" class="citation book cs1">Jake Rutter (2011). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=owKwLfAll6QC&amp;pg=PR21"><i>Smashing JQuery</i></a>. <a href="Wiley_(publisher)" title="Wiley (publisher)">Wiley</a>. p.&nbsp;21. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9780470977361</bdi>.</cite></span>
</li>
<li id="cite_note-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-7">^</a></b></span> <span class="reference-text"><cite id="CITEREFWalsh2007" class="citation web cs1">Walsh, David (2007-09-05). <a rel="nofollow" class="external text" href="https://davidwalsh.name/6-reasons-to-use-javascript-libraries-frameworks">"6 Reasons To Use JavaScript Libraries &amp; Frameworks"</a>. <i>David Walsh Blog</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-8">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://leanylabs.com/blog/npm-packages-for-nodejs/">"40 Useful NPM Packages for Node.js Apps in 2021"</a>. <i>leanylabs.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-9">^</a></b></span> <span class="reference-text"><cite id="CITEREFShelley_Powers2010" class="citation book cs1">Shelley Powers (2010). <a rel="nofollow" class="external text" href="https://books.google.com/books?id=kW0s1IrlbnIC"><i>JavaScript Cookbook</i></a>. <a href="O'Reilly_Media" title="O'Reilly Media">O'Reilly Media</a>. pp.&nbsp;<span class="nowrap">389–</span>412. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>9781449395926</bdi>.</cite></span>
</li>
<li id="cite_note-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-10">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.freecodecamp.org/news/the-difference-between-a-framework-and-a-library-bd133054023f/">"The Difference Between a Framework and a Library"</a>. <i>freeCodeCamp.org</i>. 2019-02-01<span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-11"><span class="mw-cite-backlink"><b><a href="#cite_ref-11">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://dev.to/rohitrana/what-is-the-difference-between-library-vs-framework-174n">"What is the difference between Library vs Framework?"</a>. <i>DEV Community</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-:0-12"><span class="mw-cite-backlink">^ <a href="#cite_ref-:0_12-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:0_12-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:0_12-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><cite class="citation book cs1"><i>JavaScript Frameworks for Modern Web Development: The Essential Frameworks, Libraries, and Tools to Learn Right Now</i>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-1484249949</bdi>.</cite></span>
</li>
<li id="cite_note-:1-13"><span class="mw-cite-backlink">^ <a href="#cite_ref-:1_13-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:1_13-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:1_13-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><cite class="citation book cs1"><i>Building Native Web Components: Front-End Development with Polymer and Vue.js</i>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-1484259047</bdi>.</cite></span>
</li>
<li id="cite_note-:2-14"><span class="mw-cite-backlink">^ <a href="#cite_ref-:2_14-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-:2_14-1"><sup><i><b>b</b></i></sup></a> <a href="#cite_ref-:2_14-2"><sup><i><b>c</b></i></sup></a></span> <span class="reference-text"><cite class="citation book cs1"><i>Hands-On JavaScript High Performance: Build faster web apps using Node.js, Svelte.js, and WebAssembly</i>. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a>&nbsp;<bdi>978-1838821098</bdi>.</cite></span>
</li>
<li id="cite_note-15"><span class="mw-cite-backlink"><b><a href="#cite_ref-15">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/enhance-dev">"Enhance"</a>. <i><a href="GitHub" title="GitHub">GitHub</a></i>.</cite></span>
</li>
<li id="cite_note-16"><span class="mw-cite-backlink"><b><a href="#cite_ref-16">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/withastro/astro">"Astro framework"</a>. <i><a href="GitHub" title="GitHub">GitHub</a></i>.</cite></span>
</li>
<li id="cite_note-17"><span class="mw-cite-backlink"><b><a href="#cite_ref-17">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://github.com/denoland/fresh">"Fresh"</a>. <i><a href="GitHub" title="GitHub">GitHub</a></i>.</cite></span>
</li>
<li id="cite_note-18"><span class="mw-cite-backlink"><b><a href="#cite_ref-18">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://css-tricks.com/a-clear-definition-of-npm-and-what-it-does/">"A Clear Definition of npm and What it Does"</a>. <i>CSS-Tricks</i>. 2022-01-20<span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-19"><span class="mw-cite-backlink"><b><a href="#cite_ref-19">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://www.w3schools.com/nodejs/nodejs_npm.asp">"Node.js NPM"</a>. <i>www.w3schools.com</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
<li id="cite_note-20"><span class="mw-cite-backlink"><b><a href="#cite_ref-20">^</a></b></span> <span class="reference-text"><cite id="CITEREFGrosselle2019" class="citation web cs1">Grosselle, Alessandro (2019-11-12). <a rel="nofollow" class="external text" href="https://medium.com/thron-tech/the-js-library-distribution-dilemma-npm-or-url-c63aa5842a4c">"The JS library distribution dilemma, NPM or URL?"</a>. <i>THRON tech blog</i><span class="reference-accessdate">. Retrieved <span class="nowrap">2022-03-15</span></span>.</cite></span>
</li>
</ol></div></div>
<div style="clear:both;" class=""></div>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */


.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}


/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}


/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="JavaScript497" style="padding:3px"><table class="nowraplinks mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */


.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}


/* end https://en.wikipedia.org/ */
</style><div id="JavaScript497" style="font-size:114%;margin:0 4em"><a href="JavaScript" title="JavaScript">JavaScript</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Static_program_analysis" title="Static program analysis">Code analysis</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="ESLint" title="ESLint">ESLint</a></li>
<li><a href="JSHint" title="JSHint">JSHint</a></li>
<li><a href="JSLint" title="JSLint">JSLint</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Subset" title="Subset">Supersets</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="ArkTS" title="ArkTS">ArkTS</a></li>
<li><a href="JS%2B%2B" title="JS++">JS++</a></li>
<li><a href="TypeScript" title="TypeScript">TypeScript</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Source-to-source_compiler" title="Source-to-source compiler">Transpilers</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="AtScript" title="AtScript">AtScript</a></li>
<li><a href="Babel_(transcompiler)" title="Babel (transcompiler)">Babel</a></li>
<li><a href="ClojureScript" class="mw-redirect" title="ClojureScript">ClojureScript</a></li>
<li><a href="CoffeeScript" title="CoffeeScript">CoffeeScript</a></li>
<li><a href="Dart_(programming_language)" title="Dart (programming language)">Dart</a></li>
<li><a href="Elm_(programming_language)" title="Elm (programming language)">Elm</a></li>
<li><a href="Emscripten" title="Emscripten">Emscripten</a></li>
<li><a href="Google_Closure_Compiler" class="mw-redirect" title="Google Closure Compiler">Google Closure Compiler</a></li>
<li><a href="Google_Web_Toolkit" title="Google Web Toolkit">Google Web Toolkit</a></li>
<li><a href="Haxe" title="Haxe">Haxe</a></li>
<li><a href="LiveScript_(programming_language)" title="LiveScript (programming language)">LiveScript</a></li>
<li><a href="Morfik" title="Morfik">Morfik</a></li>
<li><a href="Nim_(programming_language)" title="Nim (programming language)">Nim</a></li>
<li><a href="Opa_(programming_language)" title="Opa (programming language)">Opa</a></li>
<li><a href="PureScript" title="PureScript">PureScript</a></li>
<li><a href="Reason_(programming_language)" title="Reason (programming language)">Reason</a></li>
<li><a href="WebSharper" title="WebSharper">WebSharper</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Concepts</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul>
<li><a href="JavaScript_syntax" title="JavaScript syntax">JavaScript syntax</a></li>
<li><a href="JavaScript_stack" title="JavaScript stack">JavaScript stack</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Debugger" title="Debugger">Debuggers</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Chrome_(browser)" class="mw-redirect" title="Chrome (browser)">Chrome DevTools</a></li>
<li><a href="Firefox" title="Firefox">Firefox</a> Inspector</li>
<li><a href="Komodo_IDE" title="Komodo IDE">Komodo IDE</a></li>
<li><a href="Safari_(web_browser)" title="Safari (web browser)">Safari</a> Web Inspector</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Documentation_generator" title="Documentation generator">Documentation generators</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="JSDoc" title="JSDoc">JSDoc</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Editors (<a href="Comparison_of_JavaScript-based_source_code_editors" title="Comparison of JavaScript-based source code editors">comparison</a>)</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Ace_(editor)" title="Ace (editor)">Ace</a>
<ul><li><a href="Cloud9_IDE" title="Cloud9 IDE">Cloud9 IDE</a></li></ul></li>
<li><a href="Atom_(text_editor)" title="Atom (text editor)">Atom</a></li>
<li><a href="CodeMirror" title="CodeMirror">CodeMirror</a>
<ul><li><a href="Brackets_(text_editor)" title="Brackets (text editor)">Brackets</a></li>
<li><a href="Light_Table_(software)" title="Light Table (software)">Light Table</a></li></ul></li>
<li><a href="PhpStorm" class="mw-redirect" title="PhpStorm">PhpStorm</a></li>
<li><a href="List_of_Eclipse_projects#Top-level_sub-projects" title="List of Eclipse projects">Orion</a></li>
<li><a href="Visual_Studio" title="Visual Studio">Visual Studio</a>
<ul><li><a href="Microsoft_Visual_Studio_Express" title="Microsoft Visual Studio Express">Visual Studio Express</a></li></ul></li>
<li><a href="Visual_Studio_Code" title="Visual Studio Code">Visual Studio Code</a></li>
<li><a href="Visual_Studio#Azure_DevOps_Services" title="Visual Studio">Visual Studio Team Services</a></li>
<li><a href="Vim_(text_editor)" title="Vim (text editor)">Vim</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="JavaScript_engine" class="mw-redirect" title="JavaScript engine">Engines</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="List_of_ECMAScript_engines" class="mw-redirect" title="List of ECMAScript engines">List of ECMAScript engines</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Software_framework" title="Software framework">Frameworks</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Comparison_of_JavaScript-based_web_frameworks" title="Comparison of JavaScript-based web frameworks">Comparison of JavaScript frameworks</a></li>
<li><a href="List_of_JavaScript_libraries" title="List of JavaScript libraries">List of JavaScript libraries</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related <a href="Technology" title="Technology">technologies</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Ajax_(programming)" title="Ajax (programming)">Ajax</a></li>
<li><a href="AssemblyScript" title="AssemblyScript">AssemblyScript</a></li>
<li><a href="Asm.js" title="Asm.js">asm.js</a></li>
<li><a href="Cascading_Style_Sheets" class="mw-redirect" title="Cascading Style Sheets">Cascading Style Sheets</a></li>
<li><a href="Document_Object_Model" title="Document Object Model">Document Object Model</a></li>
<li><a href="HTML" title="HTML">HTML</a>
<ul><li><a href="HTML5" title="HTML5">HTML5</a></li></ul></li>
<li><a href="JSON" title="JSON">JSON</a></li>
<li><a href="WebAssembly" title="WebAssembly">WebAssembly</a></li>
<li><a href="WebAuthn" title="WebAuthn">WebAuthn</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Package_manager" title="Package manager">Package managers</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Npm" title="Npm">npm</a></li>
<li><a href="Pnpm" title="Pnpm">pnpm</a></li>
<li><a href="Yarn_(package_manager)" title="Yarn (package manager)">yarn</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Module bundlers</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Webpack" title="Webpack">Webpack</a></li>
<li><a href="Vite_(software)" title="Vite (software)">Vite</a></li>
<li><a href="Esbuild" title="Esbuild">esbuild</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Server-side_JavaScript" class="mw-redirect" title="Server-side JavaScript">Server-side</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Active_Server_Pages" title="Active Server Pages">Active Server Pages</a></li>
<li><a href="Bun_(software)" title="Bun (software)">Bun</a></li>
<li><a href="CommonJS" title="CommonJS">CommonJS</a></li>
<li><a href="Deno_(software)" title="Deno (software)">Deno</a></li>
<li><a href="JSGI" title="JSGI">JSGI</a></li>
<li><a href="Node.js" title="Node.js">Node.js</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Unit_testing" title="Unit testing">Unit testing</a> frameworks (<a href="List_of_unit_testing_frameworks#JavaScript" title="List of unit testing frameworks">list</a>)</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Jasmine_(software)" title="Jasmine (software)">Jasmine</a></li>
<li><a href="Mocha_(JavaScript_framework)" title="Mocha (JavaScript framework)">Mocha</a></li>
<li><a href="QUnit" title="QUnit">QUnit</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">People</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Douglas_Crockford" title="Douglas Crockford">Douglas Crockford</a></li>
<li><a href="Ryan_Dahl" title="Ryan Dahl">Ryan Dahl</a></li>
<li><a href="Brendan_Eich" title="Brendan Eich">Brendan Eich</a></li>
<li><a href="John_Resig" title="John Resig">John Resig</a></li>
<li><a href="Jesse_James_Garrett" title="Jesse James Garrett">Jesse James Garrett</a></li></ul>
</div></td></tr></tbody></table></div>
<div class="navbox-styles"></div><div role="navigation" class="navbox" aria-labelledby="ECMAScript584" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="2"><div id="ECMAScript584" style="font-size:114%;margin:0 4em"><a href="ECMAScript" title="ECMAScript">ECMAScript</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Dialects</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="ActionScript" title="ActionScript">ActionScript</a>
<ul><li><a href="Haxe" title="Haxe">Haxe</a></li></ul></li>
<li><a href="Caja_project" title="Caja project">Caja</a></li>
<li><a href="JavaScript" title="JavaScript">JavaScript</a>
<ul><li><a href="JavaScript_engine" class="mw-redirect" title="JavaScript engine">engines</a></li>
<li><a href="Asm.js" title="Asm.js">asm.js</a></li></ul></li>
<li><a href="JScript" title="JScript">JScript</a></li>
<li><a href="JScript_.NET" title="JScript .NET">JScript .NET</a></li>
<li><a href="QtScript" title="QtScript">QtScript</a></li>
<li><a href="TypeScript" title="TypeScript">TypeScript</a></li>
<li><a href="WMLScript" title="WMLScript">WMLScript</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="List_of_JavaScript_engines" title="List of JavaScript engines">Engines</a><br>(list)</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Presto_(browser_engine)#ECMAScript_engines" title="Presto (browser engine)">Carakan</a></li>
<li><a href="Presto_(browser_engine)#ECMAScript_engines" title="Presto (browser engine)">Futhark</a></li>
<li>InScript</li>
<li><a href="WebKit#JavaScriptCore" title="WebKit">JavaScriptCore</a></li>
<li><a href="JScript" title="JScript">JScript</a></li>
<li><a href="KJS_(software)" class="mw-redirect" title="KJS (software)">KJS</a></li>
<li><a href="Presto_(browser_engine)#ECMAScript_engines" title="Presto (browser engine)">Linear B</a></li>
<li><a href="QtScript" title="QtScript">QtScript</a></li>
<li><a href="Rhino_(JavaScript_engine)" title="Rhino (JavaScript engine)">Rhino</a></li>
<li><a href="SpiderMonkey" title="SpiderMonkey">SpiderMonkey</a>
<ul><li><a href="SpiderMonkey#TraceMonkey" title="SpiderMonkey">TraceMonkey</a></li>
<li><a href="SpiderMonkey#JägerMonkey" title="SpiderMonkey">JägerMonkey</a></li></ul></li>
<li><a href="Tamarin_(software)" title="Tamarin (software)">Tamarin</a></li>
<li><a href="V8_(JavaScript_engine)" title="V8 (JavaScript engine)">V8</a></li>
<li><a href="Chakra_(JavaScript_engine)" title="Chakra (JavaScript engine)">ChakraCore</a>
<ul><li><a href="Chakra_(JScript_engine)" title="Chakra (JScript engine)">Chakra</a></li></ul></li>
<li><a href="JScript_.NET" title="JScript .NET">JScript .NET</a></li>
<li><a href="Nashorn_(JavaScript_engine)" title="Nashorn (JavaScript engine)">Nashorn</a></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Software_framework" title="Software framework">Frameworks</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Client-side_JavaScript" class="mw-redirect" title="Client-side JavaScript">Client-side</a></th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Dojo_Toolkit" title="Dojo Toolkit">Dojo</a></li>
<li><a href="Echo_(framework)" title="Echo (framework)">Echo</a></li>
<li><a href="Ext_JS" title="Ext JS">Ext JS</a></li>
<li><a href="Google_Web_Toolkit" title="Google Web Toolkit">Google Web Toolkit</a></li>
<li><a href="JQuery" title="JQuery">jQuery</a></li>
<li><a href="Lively_Kernel" title="Lively Kernel">Lively Kernel</a></li>
<li>midori</li>
<li><a href="MochiKit" title="MochiKit">MochiKit</a></li>
<li><a href="MooTools" title="MooTools">MooTools</a></li>
<li><a href="Prototype_JavaScript_Framework" title="Prototype JavaScript Framework">Prototype</a></li>
<li><a href="Pyjs" title="Pyjs">Pyjs</a></li>
<li><a href="Qooxdoo" title="Qooxdoo">qooxdoo</a></li>

<li><a href="SproutCore" title="SproutCore">SproutCore</a></li>
<li><a href="Spry_framework" title="Spry framework">Spry</a></li>
<li>Wakanda Framework</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Server-side_JavaScript" class="mw-redirect" title="Server-side JavaScript">Server-side</a></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Node.js" title="Node.js">Node.js</a></li>
<li><a href="Deno_(software)" title="Deno (software)">Deno</a></li>
<li><a href="Bun_(software)" title="Bun (software)">Bun</a></li>
<li><a href="Jaxer" class="mw-redirect" title="Jaxer">Jaxer</a></li>
<li><a href="AppJet" title="AppJet">AppJet</a></li>
<li>WakandaDB</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Multiple</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>Cappuccino</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"></th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Backbone.js" title="Backbone.js">Backbone.js</a></li>
<li><a href="SWFObject" title="SWFObject">SWFObject</a></li>
<li><a href="Underscore.js" title="Underscore.js">Underscore.js</a></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">People</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Brendan_Eich" title="Brendan Eich">Brendan Eich</a></li>
<li><a href="Douglas_Crockford" title="Douglas Crockford">Douglas Crockford</a></li>
<li><a href="John_Resig" title="John Resig">John Resig</a></li>
<li>Scott Isaacs</li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Other</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><a href="Dynamic_HTML" title="Dynamic HTML">DHTML</a></li>
<li><a href="Ecma_International" title="Ecma International">Ecma International</a></li>
<li><a href="JSDoc" title="JSDoc">JSDoc</a></li>
<li><a href="JSGI" title="JSGI">JSGI</a></li>
<li><a href="JSHint" title="JSHint">JSHint</a></li>
<li><a href="JSLint" title="JSLint">JSLint</a></li>
<li><a href="JSON" title="JSON">JSON</a></li>
<li><a href="JavaScript_Style_Sheets" title="JavaScript Style Sheets">JSSS</a></li>
<li><a href="Sputnik_(JavaScript_conformance_test)" title="Sputnik (JavaScript conformance test)">Sputnik</a></li>
<li><a href="Browser_speed_test" class="mw-redirect" title="Browser speed test">SunSpider</a></li>
<li><a href="Asynchronous_module_definition" title="Asynchronous module definition">Asynchronous module definition</a></li>
<li><a href="CommonJS" title="CommonJS">CommonJS</a></li></ul>
</div></td></tr><tr><td class="navbox-abovebelow" colspan="2"><div><span class="noviewer" typeof="mw:File"><span title="List-Class article"></span></span> <b>Lists</b>: <a href="List_of_JavaScript_libraries" title="List of JavaScript libraries">JavaScript libraries</a> • <a href="List_of_Ajax_frameworks#JavaScript" title="List of Ajax frameworks">Ajax frameworks</a> • <a href="List_of_server-side_JavaScript_implementations" title="List of server-side JavaScript implementations">Server-side JavaScript</a><br><span class="noviewer" typeof="mw:File"><span title="List-Class article"></span></span> <b>Comparison</b>: <a href="Comparison_of_JavaScript-based_web_frameworks" title="Comparison of JavaScript-based web frameworks">JavaScript web frameworks</a></div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-06-29" href="https://en.wikipedia.org/wiki/?title=JavaScript_library&amp;oldid=1297988770">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>

</body></html>